package com.itheima.dao;

import com.github.pagehelper.Page;
import com.itheima.pojo.Menu;
import org.apache.ibatis.annotations.Param;

import java.util.LinkedHashSet;
import java.util.List;

public interface MenuDao {
    LinkedHashSet<Menu> findById(Integer roleId);
    List<Menu> findByMenuId(Integer menuId);

//    条件分页查询
    Page<Menu> selectByCondition(String queryString);
//    新增菜单项
    void insertMenu(Menu menu);
//    删除中间表中的菜单项与角色的关系数据
    void deleteRelOfMenuAndRole(Integer id);
//    删除菜单项
    void deleteMenu(Integer id);
//    新增中间表中的菜单项与角色的关系数据
    void insertRelOfMenuAndRole(@Param (value = "roleId") Integer roleId,
                                @Param (value = "menuId") Integer menuId);
//    根据id查询菜单项
    Menu selectById(Integer id);
//    修改菜单项
    void updateMenu(Menu menu);
//    修改中间表中的菜单项与角色的关系数据
    void updateRelOfMenuAndRole(@Param (value = "menuId")Integer menuId,
                                @Param (value = "roleId") Integer roleId);

    List<Menu> findAll();

}
